using System;
using System.Collections.Generic;
using System.Text;

using NHibernate;
using Zwms.Data.Base;
using System.Runtime.Serialization;

namespace Zwms.Data.BusinessObjects
{
    [DataContract]
    public partial class BilInPlanBill : BusinessBase<string>
    {
        #region Declarations

        private string _iBType = String.Empty;
        private string _priority = String.Empty;
        private string _pOCode = String.Empty;
        private string _sendBillCode = String.Empty;
        private string _senderCode = String.Empty;
        private string _senderName = String.Empty;
        private string _recieverCode = String.Empty;
        private string _recieverName = String.Empty;
        private string _warehouseCode = String.Empty;
        private string _warehouseName = String.Empty;
        private string _deliveryManName = String.Empty;
        private string _deliverManPhone = String.Empty;
        private string _vehicle = String.Empty;
        private string _planReceiveDate = String.Empty;
        private string _billStatus = String.Empty;
        private string _isDeactived = String.Empty;
        private string _createUserCode = String.Empty;
        private string _createUserName = String.Empty;
        private string _createDate = String.Empty;
        private string _createTime = String.Empty;
        private string _editUserCode = String.Empty;
        private string _editUserName = String.Empty;
        private string _editDate = String.Empty;
        private string _editTime = String.Empty;
        private string _remark = String.Empty;

        #endregion

        #region Constructors

        public BilInPlanBill() { }

        #endregion

        #region Methods

        public override int GetHashCode()
        {
            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append(this.GetType().FullName);
            sb.Append(_iBType);
            sb.Append(_priority);
            sb.Append(_pOCode);
            sb.Append(_sendBillCode);
            sb.Append(_senderCode);
            sb.Append(_senderName);
            sb.Append(_recieverCode);
            sb.Append(_recieverName);
            sb.Append(_warehouseCode);
            sb.Append(_warehouseName);
            sb.Append(_deliveryManName);
            sb.Append(_deliverManPhone);
            sb.Append(_vehicle);
            sb.Append(_planReceiveDate);
            sb.Append(_billStatus);
            sb.Append(_createUserCode);
            sb.Append(_createUserName);
            sb.Append(_createDate);
            sb.Append(_createTime);
            sb.Append(_editUserCode);
            sb.Append(_editUserName);
            sb.Append(_editDate);
            sb.Append(_editTime);
            sb.Append(_remark);

            return sb.ToString().GetHashCode();
        }

        #endregion

        #region Properties

        [DataMember]
        public virtual string IBType
        {
            get { return _iBType.TrimEnd(); }
            set
            {
                _iBType = value;
            }
        }

        [DataMember]
        public virtual string Priority
        {
            get { return _priority.TrimEnd(); }
            set
            {
                _priority = value;
            }
        }


        [DataMember]
        public virtual string POCode
        {
            get { return _pOCode.TrimEnd(); }
            set
            {
                _pOCode = value;
            }
        }

        [DataMember]
        public virtual string SendBillCode
        {
            get { return _sendBillCode.TrimEnd(); }
            set
            {
                _sendBillCode = value;
            }
        }

        [DataMember]
        public virtual string SenderCode
        {
            get { return _senderCode.TrimEnd(); }
            set
            {
                _senderCode = value;
            }
        }

        [DataMember]
        public virtual string SenderName
        {
            get { return _senderName.TrimEnd(); }
            set
            {
                OnSenderNameChanging();
                _senderName = value;
                OnSenderNameChanged();
            }
        }
        partial void OnSenderNameChanging();
        partial void OnSenderNameChanged();

        [DataMember]
        public virtual string RecieverCode
        {
            get { return _recieverCode.TrimEnd(); }
            set
            {
                OnRecieverCodeChanging();
                _recieverCode = value;
                OnRecieverCodeChanged();
            }
        }
        partial void OnRecieverCodeChanging();
        partial void OnRecieverCodeChanged();



        [DataMember]
        public virtual string RecieverName
        {
            get { return _recieverName.TrimEnd(); }
            set
            {
                OnRecieverNameChanging();
                _recieverName = value;
                OnRecieverNameChanged();
            }
        }
        partial void OnRecieverNameChanging();
        partial void OnRecieverNameChanged();



        [DataMember]
        public virtual string WarehouseCode
        {
            get { return _warehouseCode.TrimEnd(); }
            set
            {
                OnWarehouseCodeChanging();
                _warehouseCode = value;
                OnWarehouseCodeChanged();
            }
        }
        partial void OnWarehouseCodeChanging();
        partial void OnWarehouseCodeChanged();

        [DataMember]
        public virtual string WarehouseName
        {
            get { return _warehouseName.TrimEnd(); }
            set
            {
                OnWarehouseNameChanging();
                _warehouseName = value;
                OnWarehouseNameChanged();
            }
        }
        partial void OnWarehouseNameChanging();
        partial void OnWarehouseNameChanged();

        [DataMember]
        public virtual string DeliveryManName
        {
            get { return _deliveryManName.TrimEnd(); }
            set
            {
                OnDeliveryManNameChanging();
                _deliveryManName = value;
                OnDeliveryManNameChanged();
            }
        }
        partial void OnDeliveryManNameChanging();
        partial void OnDeliveryManNameChanged();

        [DataMember]
        public virtual string DeliverManPhone
        {
            get { return _deliverManPhone.TrimEnd(); }
            set
            {
                OnDeliverManPhoneChanging();
                _deliverManPhone = value;
                OnDeliverManPhoneChanged();
            }
        }
        partial void OnDeliverManPhoneChanging();
        partial void OnDeliverManPhoneChanged();

        [DataMember]
        public virtual string Vehicle
        {
            get { return _vehicle.TrimEnd(); }
            set
            {
                OnVehicleChanging();
                _vehicle = value;
                OnVehicleChanged();
            }
        }
        partial void OnVehicleChanging();
        partial void OnVehicleChanged();

        [DataMember]
        public virtual string PlanReceiveDate
        {
            get { return _planReceiveDate.TrimEnd(); }
            set
            {
                OnPlanReceiveDateChanging();
                _planReceiveDate = value;
                OnPlanReceiveDateChanged();
            }
        }
        partial void OnPlanReceiveDateChanging();
        partial void OnPlanReceiveDateChanged();

        [DataMember]
        public virtual string BillStatus
        {
            get { return _billStatus.TrimEnd(); }
            set
            {
                OnBillStatusChanging();
                _billStatus = value;
                OnBillStatusChanged();
            }
        }
        partial void OnBillStatusChanging();
        partial void OnBillStatusChanged();

        [DataMember]
        public virtual string IsDeactived
        {
            get { return _isDeactived; }
            set
            {
                _isDeactived = value;
            }
        }

        [DataMember]
        public virtual string CreateUserCode
        {
            get { return _createUserCode.TrimEnd(); }
            set
            {
                OnCreateUserCodeChanging();
                _createUserCode = value;
                OnCreateUserCodeChanged();
            }
        }
        partial void OnCreateUserCodeChanging();
        partial void OnCreateUserCodeChanged();

        [DataMember]
        public virtual string CreateUserName
        {
            get { return _createUserName.TrimEnd(); }
            set
            {
                OnCreateUserNameChanging();
                _createUserName = value;
                OnCreateUserNameChanged();
            }
        }
        partial void OnCreateUserNameChanging();
        partial void OnCreateUserNameChanged();

        [DataMember]
        public virtual string CreateDate
        {
            get { return _createDate.TrimEnd(); }
            set
            {
                OnCreateDateChanging();
                _createDate = value;
                OnCreateDateChanged();
            }
        }
        partial void OnCreateDateChanging();
        partial void OnCreateDateChanged();

        [DataMember]
        public virtual string CreateTime
        {
            get { return _createTime.TrimEnd(); }
            set
            {
                OnCreateTimeChanging();
                _createTime = value;
                OnCreateTimeChanged();
            }
        }
        partial void OnCreateTimeChanging();
        partial void OnCreateTimeChanged();

        [DataMember]
        public virtual string EditUserCode
        {
            get { return _editUserCode.TrimEnd(); }
            set
            {
                OnEditUserCodeChanging();
                _editUserCode = value;
                OnEditUserCodeChanged();
            }
        }
        partial void OnEditUserCodeChanging();
        partial void OnEditUserCodeChanged();

        [DataMember]
        public virtual string EditUserName
        {
            get { return _editUserName.TrimEnd(); }
            set
            {
                OnEditUserNameChanging();
                _editUserName = value;
                OnEditUserNameChanged();
            }
        }
        partial void OnEditUserNameChanging();
        partial void OnEditUserNameChanged();

        [DataMember]
        public virtual string EditDate
        {
            get { return _editDate.TrimEnd(); }
            set
            {
                OnEditDateChanging();
                _editDate = value;
                OnEditDateChanged();
            }
        }
        partial void OnEditDateChanging();
        partial void OnEditDateChanged();

        [DataMember]
        public virtual string EditTime
        {
            get { return _editTime.TrimEnd(); }
            set
            {
                OnEditTimeChanging();
                _editTime = value;
                OnEditTimeChanged();
            }
        }
        partial void OnEditTimeChanging();
        partial void OnEditTimeChanged();

        [DataMember]
        public virtual string Remark
        {
            get { return _remark.TrimEnd(); }
            set
            {
                OnRemarkChanging();
                _remark = value;
                OnRemarkChanged();
            }
        }
        partial void OnRemarkChanging();
        partial void OnRemarkChanged();

        #endregion
    }
}